package com.ruoyi.system.domain;

import java.math.BigDecimal;
import java.util.List;

import com.alibaba.fastjson2.JSON;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.ruoyi.system.domain.vo.PddPropert;
import com.ruoyi.system.domain.vo.Pddgg;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 抖音商品详情对象 tl_dy_doods_detail
 *
 * @author ruoyi
 * @date 2023-10-20
 */
public class TlDyDoodsDetail extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 商品id */
    @JsonProperty(value = "product_id")
    private Long productId;

    /** 分类id */
    @Excel(name = "分类id")
    @JsonProperty(value = "category_id")
    private Long categoryId;

    private Long categoryId3;

    /** 分类名称 */
    @Excel(name = "分类名称")
    @JsonProperty(value = "category_name")
    private String categoryName;

    /** 封面 */
    @Excel(name = "封面")
    @JsonProperty(value = "cover")
    private String cover;

    /** 详情url */
    @Excel(name = "详情url")
    @JsonProperty(value = "detail_url")
    private String detailUrl;

    /** 第一分类id */
    @Excel(name = "第一分类id")
    @JsonProperty(value = "first_cid")
    private Long firstCid;

    /** 图片集合 */
    @Excel(name = "图片集合")
    @JsonProperty(value = "imgs")
    private String imgs;

    /** 是否有库存 */
    @Excel(name = "是否有库存")
    @JsonProperty(value = "in_stock")
    private Integer inStock;

    /** 价格 */
    @Excel(name = "价格")
    @JsonProperty(value = "price")
    private BigDecimal price;

    /** 销量 */
    @Excel(name = "销量")
    @JsonProperty(value = "sales")
    private String sales;

    /** 第二分类id */
    @Excel(name = "第二分类id")
    @JsonProperty(value = "second_cid")
    private Long secondCid;

    /** 第三分类id */
    @Excel(name = "第三分类id")
    @JsonProperty(value = "third_cid")
    private Long thirdCid;

    /** 标题 */
    @Excel(name = "标题")
    @JsonProperty(value = "title")
    private String title;

    /** 品牌id */
    @Excel(name = "品牌id")
    @JsonProperty(value = "brand_id")
    private Long brandId;

    /** 品牌名中文 */
    @Excel(name = "品牌名中文")
    @JsonProperty(value = "brand_name_cn")
    private String brandNameCn;

    /** 品牌名英文 */
    @Excel(name = "品牌名英文")
    @JsonProperty(value = "brand_name_en")
    private String brandNameEn;

    /** 评论数量 */
    @Excel(name = "评论数量")
    @JsonProperty(value = "comment_num")
    private Long commentNum;

    /** 评分 */
    @Excel(name = "评分")
    @JsonProperty(value = "comment_score")
    private String commentScore;

    /** $column.columnComment */
    @JsonProperty(value = "coupon_price")
    private BigDecimal couponPrice;

    /** $column.columnComment */
    @JsonProperty(value = "post_free")
    private Integer postFree;

    /** 佣金比例 */
    @Excel(name = "佣金比例")
    @JsonProperty(value = "kol_num")
    private Long kolNum;

    /** 订单数量 */
    @Excel(name = "订单数量")
    @JsonProperty(value = "order_num")
    private Long orderNum;

    /** 浏览量 */
    @Excel(name = "浏览量")
    @JsonProperty(value = "view_num")
    private Long viewNum;

    /** $column.columnComment */
    @JsonProperty(value = "presell_type")
    private String presellType;

    /** $column.columnComment */
    @JsonProperty(value = "commission_type")
    private String commissionType;

    /** $column.columnComment */
    @JsonProperty(value = "cos_fee")
    private BigDecimal cosFee;

    /** $column.columnComment */
    @JsonProperty(value = "cos_ratio")
    private String cosRatio;

    /** $column.columnComment */
    @JsonProperty(value = "kol_cos_fee")
    private BigDecimal kolCosFee;

    /** $column.columnComment */
    @JsonProperty(value = "kol_cos_ratio")
    private String kolCosRatio;

    /** 专向链接 */
    @Excel(name = "专向链接")
    @JsonProperty(value = "is_assured")
    private Integer isAssured;

    /** $column.columnComment */
    @JsonProperty(value = "sharable")
    private Integer sharable;

    /** 店铺id */
    @Excel(name = "店铺id")
    @JsonProperty(value = "shop_id")
    private Long shopId;

    /** 店铺名称 */
    @Excel(name = "店铺名称")
    @JsonProperty(value = "shop_name")
    private String shopName;

    /** 店铺评分json */
    @Excel(name = "店铺评分json")
    @JsonProperty(value = "shop_total_score")
    private String shopTotalScore;

    /** $column.columnComment */
    @JsonProperty(value = "has_douin_goods_tag")
    private String hasDouinGoodsTag;

    /** 发货说明 */
    @Excel(name = "发货说明")
    @JsonProperty(value = "logistics_info")
    private String logisticsInfo;

    /** 商品详情图链接 */
    @Excel(name = "商品详情图链接")
    @JsonProperty(value = "detail")
    private String detail;

    /** $column.columnComment */
    @JsonProperty(value = "origin_cos_fee")
    private BigDecimal originCosFee;

    /** $column.columnComment */
    @JsonProperty(value = "top_cos_fee")
    private BigDecimal topCosFee;

    /** $column.columnComment */
    @JsonProperty(value = "fav")
    private String fav;

    private String roleJson;

    private List<Pddgg> pddggs;

    private Long parentSpecId;

    private List<PddPropert> sku_properties;

    private Integer manliangjian;

    public Integer getManliangjian() {
        return manliangjian;
    }

    public void setManliangjian(Integer manliangjian) {
        this.manliangjian = manliangjian;
    }

    public List<Pddgg> getPddggs() {
        return pddggs;
    }

    public void setPddggs(List<Pddgg> pddggs) {
        this.pddggs = pddggs;
    }

    public Long getParentSpecId() {
        return parentSpecId;
    }

    public void setParentSpecId(Long parentSpecId) {
        this.parentSpecId = parentSpecId;
    }

    public List<PddPropert> getSku_properties() {
        return sku_properties;
    }

    public void setSku_properties(List<PddPropert> sku_properties) {
        this.sku_properties = sku_properties;
    }

    public Long getCategoryId3() {
        return categoryId3;
    }

    public void setCategoryId3(Long categoryId3) {
        this.categoryId3 = categoryId3;
    }

    public String getRoleJson() {
        return roleJson;
    }

    public void setRoleJson(String roleJson) {
        this.roleJson = roleJson;
    }

    public void setProductId(Long productId)
    {
        this.productId = productId;
    }

    public Long getProductId()
    {
        return productId;
    }
    public void setCategoryId(Long categoryId)
    {
        this.categoryId = categoryId;
    }

    public Long getCategoryId()
    {
        return categoryId;
    }
    public void setCategoryName(String categoryName)
    {
        this.categoryName = categoryName;
    }

    public String getCategoryName()
    {
        return categoryName;
    }
    public void setCover(String cover)
    {
        this.cover = cover;
    }

    public String getCover()
    {
        return cover;
    }
    public void setDetailUrl(String detailUrl)
    {
        this.detailUrl = detailUrl;
    }

    public String getDetailUrl()
    {
        return detailUrl;
    }
    public void setFirstCid(Long firstCid)
    {
        this.firstCid = firstCid;
    }

    public Long getFirstCid()
    {
        return firstCid;
    }
    public void setImgs(String imgs)
    {
        this.imgs = imgs;
    }

    public String getImgs()
    {
        return imgs;
    }
    public void setInStock(Integer inStock)
    {
        this.inStock = inStock;
    }

    public Integer getInStock()
    {
        return inStock;
    }
    public void setPrice(BigDecimal price)
    {
        this.price = price;
    }

    public BigDecimal getPrice()
    {
        return price;
    }
    public void setSales(String sales)
    {
        this.sales = sales;
    }

    public String getSales()
    {
        return sales;
    }
    public void setSecondCid(Long secondCid)
    {
        this.secondCid = secondCid;
    }

    public Long getSecondCid()
    {
        return secondCid;
    }
    public void setThirdCid(Long thirdCid)
    {
        this.thirdCid = thirdCid;
    }

    public Long getThirdCid()
    {
        return thirdCid;
    }
    public void setTitle(String title)
    {
        this.title = title;
    }

    public String getTitle()
    {
        return title;
    }
    public void setBrandId(Long brandId)
    {
        this.brandId = brandId;
    }

    public Long getBrandId()
    {
        return brandId;
    }
    public void setBrandNameCn(String brandNameCn)
    {
        this.brandNameCn = brandNameCn;
    }

    public String getBrandNameCn()
    {
        return brandNameCn;
    }
    public void setBrandNameEn(String brandNameEn)
    {
        this.brandNameEn = brandNameEn;
    }

    public String getBrandNameEn()
    {
        return brandNameEn;
    }
    public void setCommentNum(Long commentNum)
    {
        this.commentNum = commentNum;
    }

    public Long getCommentNum()
    {
        return commentNum;
    }
    public void setCommentScore(String commentScore)
    {
        this.commentScore = commentScore;
    }

    public String getCommentScore()
    {
        return commentScore;
    }
    public void setCouponPrice(BigDecimal couponPrice)
    {
        this.couponPrice = couponPrice;
    }

    public BigDecimal getCouponPrice()
    {
        return couponPrice;
    }
    public void setPostFree(Integer postFree)
    {
        this.postFree = postFree;
    }

    public Integer getPostFree()
    {
        return postFree;
    }
    public void setKolNum(Long kolNum)
    {
        this.kolNum = kolNum;
    }

    public Long getKolNum()
    {
        return kolNum;
    }
    public void setOrderNum(Long orderNum)
    {
        this.orderNum = orderNum;
    }

    public Long getOrderNum()
    {
        return orderNum;
    }
    public void setViewNum(Long viewNum)
    {
        this.viewNum = viewNum;
    }

    public Long getViewNum()
    {
        return viewNum;
    }
    public void setPresellType(String presellType)
    {
        this.presellType = presellType;
    }

    public String getPresellType()
    {
        return presellType;
    }
    public void setCommissionType(String commissionType)
    {
        this.commissionType = commissionType;
    }

    public String getCommissionType()
    {
        return commissionType;
    }
    public void setCosFee(BigDecimal cosFee)
    {
        this.cosFee = cosFee;
    }

    public BigDecimal getCosFee()
    {
        return cosFee;
    }
    public void setCosRatio(String cosRatio)
    {
        this.cosRatio = cosRatio;
    }

    public String getCosRatio()
    {
        return cosRatio;
    }
    public void setKolCosFee(BigDecimal kolCosFee)
    {
        this.kolCosFee = kolCosFee;
    }

    public BigDecimal getKolCosFee()
    {
        return kolCosFee;
    }
    public void setKolCosRatio(String kolCosRatio)
    {
        this.kolCosRatio = kolCosRatio;
    }

    public String getKolCosRatio()
    {
        return kolCosRatio;
    }
    public void setIsAssured(Integer isAssured)
    {
        this.isAssured = isAssured;
    }

    public Integer getIsAssured()
    {
        return isAssured;
    }
    public void setSharable(Integer sharable)
    {
        this.sharable = sharable;
    }

    public Integer getSharable()
    {
        return sharable;
    }
    public void setShopId(Long shopId)
    {
        this.shopId = shopId;
    }

    public Long getShopId()
    {
        return shopId;
    }
    public void setShopName(String shopName)
    {
        this.shopName = shopName;
    }

    public String getShopName()
    {
        return shopName;
    }
    public void setShopTotalScore(String shopTotalScore)
    {
        this.shopTotalScore = shopTotalScore;
    }

    public String getShopTotalScore()
    {
        return shopTotalScore;
    }
    public void setHasDouinGoodsTag(String hasDouinGoodsTag)
    {
        this.hasDouinGoodsTag = hasDouinGoodsTag;
    }

    public String getHasDouinGoodsTag()
    {
        return hasDouinGoodsTag;
    }
    public void setLogisticsInfo(String logisticsInfo)
    {
        this.logisticsInfo = logisticsInfo;
    }

    public String getLogisticsInfo()
    {
        return logisticsInfo;
    }
    public void setDetail(String detail)
    {
        this.detail = detail;
    }

    public String getDetail()
    {
        return detail;
    }
    public void setOriginCosFee(BigDecimal originCosFee)
    {
        this.originCosFee = originCosFee;
    }

    public BigDecimal getOriginCosFee()
    {
        return originCosFee;
    }
    public void setTopCosFee(BigDecimal topCosFee)
    {
        this.topCosFee = topCosFee;
    }

    public BigDecimal getTopCosFee()
    {
        return topCosFee;
    }
    public void setFav(String fav)
    {
        this.fav = fav;
    }

    public String getFav()
    {
        return fav;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("productId", getProductId())
            .append("categoryId", getCategoryId())
            .append("categoryName", getCategoryName())
            .append("cover", getCover())
            .append("detailUrl", getDetailUrl())
            .append("firstCid", getFirstCid())
            .append("imgs", getImgs())
            .append("inStock", getInStock())
            .append("price", getPrice())
            .append("sales", getSales())
            .append("secondCid", getSecondCid())
            .append("thirdCid", getThirdCid())
            .append("title", getTitle())
            .append("brandId", getBrandId())
            .append("brandNameCn", getBrandNameCn())
            .append("brandNameEn", getBrandNameEn())
            .append("commentNum", getCommentNum())
            .append("commentScore", getCommentScore())
            .append("couponPrice", getCouponPrice())
            .append("postFree", getPostFree())
            .append("kolNum", getKolNum())
            .append("orderNum", getOrderNum())
            .append("viewNum", getViewNum())
            .append("presellType", getPresellType())
            .append("commissionType", getCommissionType())
            .append("cosFee", getCosFee())
            .append("cosRatio", getCosRatio())
            .append("kolCosFee", getKolCosFee())
            .append("kolCosRatio", getKolCosRatio())
            .append("isAssured", getIsAssured())
            .append("sharable", getSharable())
            .append("shopId", getShopId())
            .append("shopName", getShopName())
            .append("shopTotalScore", getShopTotalScore())
            .append("hasDouinGoodsTag", getHasDouinGoodsTag())
            .append("logisticsInfo", getLogisticsInfo())
            .append("detail", getDetail())
            .append("originCosFee", getOriginCosFee())
            .append("topCosFee", getTopCosFee())
            .append("fav", getFav())
            .toString();
    }
}
